有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在java中打开文件后会发生什么

假设使用JFilechooser,我们选择了一个包含1行的文本文件,比如。。。“你好,世界”

File file = new File("someFile.txt")

当我们打印文件内容时,我们得到"hello world" 但是,如果我们更改了文本文件的内容并添加了一些新行,然后再次打印,会发生什么呢?java是否将文件存储在内存中?或者它会再次读取,然后打印我们添加的新行


共 (2) 个答案

  1. # 1 楼答案

    当您创建一个File时,实际上什么都没有发生。文件的位置是存储的,没有其他内容。这就像设置GPS去某个地方,而不是开车去那里

    从Javadoc:

    An abstract representation of file and directory pathnames.

    当您从文件中读取时,您将获得文件的内容

  2. # 2 楼答案

    那要看你做什么了。规则很简单:当您使用FileInputStreamFileReader再次阅读时,您将始终获得最新的内容。如果文件未经编辑,操作系统可能会在内存中对此进行优化。如果您只是将文件内容保存在一个自行构造的缓冲区(例如:aString或abyte[])中,并且文件发生了变化,那么缓冲区当然将保持不变